package API;

public class Math {
    /* public static int abs(int a)  获得参数绝对值;
         //int类型取值范围: -2147483648~2147483647。
         //如果没有正数与负数对应，那么会产生BUG。
     public static double  ceil(double a)  向上取整;
     public static double floor(double a)  向下取整;
     public static int round(float a)  四舍五入;
     public static int max(int a,int b)  获得较大值;
     public static double pow(double a，double b)  返回a的b次幂的值;
         //b一般大于等于一;
     public static double random();返回double的随机值范围[0.0~1.0);
     public static int/double sqrt();开平方根
     public static int/double sqrt();开立方根
     */
    public static void main(String[] args) {
        //绝对值
        System.out.println(java.lang.Math.abs(-1));// 1
        System.out.println(java.lang.Math.abs(1));// 1
        //向上取整
        System.out.println(java.lang.Math.ceil(-12.34));//-12.0
        System.out.println(java.lang.Math.ceil(12.34));//13.0
        //向下取整
        System.out.println(java.lang.Math.floor(-12.34));//-13.0
        System.out.println(java.lang.Math.floor(12.34));//12.0
        //四舍五入
        System.out.println(java.lang.Math.round(-12.34));//-12
        System.out.println(java.lang.Math.round(12.34));//12
        //获得较大值
        System.out.println(java.lang.Math.max(2.5, 3.6));
        //判断一个数是否为质数
    }
         //所求得数为质数
    /*public static boolean isPrime(int number){
        for (int i = 2; i < number; i++) {
            if (number%i==0){
                return false;
            }
        }
        return true;
    }  */

         //所求得数为质数
    public static boolean isPrime(int number) {
        int count = 0;
        for (int i = 2; i < java.lang.Math.sqrt(number); i++) {
            if (number % i == 0) {
                return false;
            }
        }
        System.out.println(count);
        return true;
    }
         //所求得数为水仙花数
   /* public static boolean isShuiXian(int number) {
        int sum;
        int i, j, k;
        for (i = 1; i < 9; i++) {
            for (j = 0; j < 9; j++) {
                for (k = 0; k < 9; k++){
                    sum=i*i*i+j*j*j+k*k*k;
                    if (i*100+j*10+k*1==sum){
                        System.out.println(sum);
                        return true;
                    }
                }
            }
        }
        return false;
    }*/

         //所求得数为水仙花数
    public static boolean isShuiXian(double sum){
        int count=0;
        for (int i = 100; i <999; i++) {
            int ge=100%10;
            int shi=i/10%10;
            int bai=i/100%10;
            sum= java.lang.Math.pow(ge,3)+ java.lang.Math.pow(shi,3)+ java.lang.Math.pow(bai,3);
            if (sum==i){
                count++;
                System.out.println(i);
            }
        }
        System.out.println(count);//有多少个水仙花数。
        return false;

    }
         //所求得数为四叶玫瑰数
    public static boolean isRose(double sum){
        int count=0;
        for (int i = 1000; i < 9999; i++) {
            int ge=100%10;
            int shi=i/10%10;
            int bai=i/100%10;
            int qian=i/1000%10;
            sum= java.lang.Math.pow(ge,4)+java.lang.Math.pow(shi,4)
                    +java.lang.Math.pow(bai,4)+java.lang.Math.pow(qian,4);
            if (sum==i){
                count++;
                System.out.println(i);
            }
        }
        System.out.println(count);
        return true;
    }


}
